In recent years, an OpenFlow technique is proposed in a research field of a new network control. In the OpenFlow technique, Non-Patent Literature 1: “OpenFlow: Enabling Innovation in Campus Networks” is known. In the OpenFlow technique, a communication is considered in units of flows of End-to-End, and a route control, trouble recovery, load distribution and optimization of the network are carried out in the flow unit. An OpenFlow switch switches a transfer packet on the basis of a flow table that is added and updated by an OpenFlow switch controller in accordance with an OpenFlow protocol.
The network that uses the OpenFlow protocol is characterized in that a switch controller (control system) and a switch (packet transfer system) are separated. When receiving a packet, the OpenFlow switch carries out processing of the packet in accordance with an action defined in a corresponding entry, if the entry exists in the flow table. On the other hand, if there is not the corresponding entry, the reception of the packet is notified to the OpenFlow switch controller. When processing of the received packet cannot be determined, the OpenFlow switch transmits data of the received packet to the OpenFlow switch controller. Typically, the OpenFlow switch transmits all of the received packets to the OpenFlow switch controller in an initial state in which any entry does not exist in the flow table.
In a flow in which a handshake such as TCP (Transmission Control Protocol) is carried out, unless the OpenFlow switch transfers an SYN packet of a terminal to a destination terminal, an SYN+ACK packet is not returned from the destination terminal. The OpenFlow switch can carry out a congestion control of a network, by using the above-mentioned mechanism to perform a rate control on a communication between the terminals.
When a flow table is set in an OpenFlow switch and service traffic already exists, there is a case that the flow table is initialized due to a trouble of the OpenFlow switch. In such a case, because the OpenFlow switch cannot determine a transfer method of reception packets, the OpenFlow switch transmits data of all of the reception packets to an OpenFlow switch controller. There is a possibility that those packets include a plurality of data of the packets to hit a same flow table entry. The OpenFlow switch controller must process redundant packet data, and as the result of this, a load of the OpenFlow switch controller increases.
In the network having an architecture in which the switch (data transfer processing) and the switch controller (control processing) are separated, as in the network using the OpenFlow protocol, there is a case that the traffics of the packets transferred from the switch to the switch controller are more in order to determine the transfer method, which results in the bottle neck of the packet transfer processing.
As the related invention, JP 2010-45502A (Patent Literature 1) is known. JP 2010-45502A (Patent Literature 1) discloses that influence on a network is suppressed when a high load state is caused on the side of a switch controller. In this conventional technique, a monitoring manager compares a load of the switch controller connected to the switch of a plurality of switch controllers with a predetermined value. As the result of the comparison, if the load is greater than the predetermined value, a switch controller that is not in an activation state is newly activated, and a connection to the newly activated switch controller is instructed to the switch. If the connection to the newly activated switch controller is instructed from the monitoring manager, the switch carries out a connection request to the newly activated switch controller. The newly activated switch controller is connected to the switch requesting the connection to control the switch.
JP 2010-45502A solves a problem by increasing the number of switch controllers so as to distribute a load, when the load of the switch controller increases. However, a subject that the redundant packets must be processed is not solved for the switch controller.